drop proc dbo.Reporte100
go

CREATE PROCEDURE dbo.Reporte100
(
  @cabezero Varchar(8000),
  @Resul    Varchar(8000)  OutPut,
  @DataSet  nText,
  @Validar  Int
)

AS
BEGIN
  Set NoCount On
   --------------------------
  --Reporte Facturas
  --------------------------

  --Variables de Trabajo
  Declare @Registro  Int
  Declare @Valor1    Datetime
  Declare @Valor2    Datetime
  Declare @Valor3    VarChar(8000)
  Declare @Desc1     VarChar(8000)
  Declare @Sql       Varchar(8000)
  --Asignar Valores
  Select @Desc1  = ''
  Select @Resul  = ''

  --Obtener los Parametros
  Exec Emulador_SepararCadena 'V1', @Cabezero, '|', @Valor1 Output --NoFactura
  Exec Emulador_SepararCadena 'V2', @Cabezero, '|', @Valor2 Output --Codigo del Estado
 

If @Validar = 1 
  Begin
--  Select @Sql = "Select NoFactura = LTrim(RTrim(IsNull(a.NoFactura,'')))," +    --Select * From PVF..Facturas
--                       "Cliente = LTrim(RTrim(IsNull(c.NombreFiscal,''))), " +
--                       "TipoCambio = LTrim(RTrim(IsNull(d.Descripcion,'')))," +
--                       "Importe = Convert(Decimal(18,2),LTrim(RTrim(IsNull(b.Cantidad,0)))) * Convert(Decimal(18,2),LTrim(RTrim(IsNull(CostoUni,0))))," +
--                       "Fecha = IsNull(Convert(Varchar,a.Fecha,103),'')" + 
--                "From PVF..Facturas a (NoLock) " +
--                "Left Join PVF..Factura_Detalles b (NoLock) On b.IdFactura = a.IdFactura" +
--                "Left Join PVF..Cat_Clientes c (NoLock) On c.IdCliente = a.IdCliente" +
--                "Left Join PVF..Cat_TipoCambio d (NoLock) On d.IdTipoCambio = a.IdTipoCambio" +
--                "Where 1 = 1"
--
--
--
----  If Len(@Valor2) > 0 And Len(@Valor3) > 0
----   Begin
----     Select @Sql = @Sql + " And a.Fecha Between '" + @Valor1 + "' And '" + @Valor2 + "' " 
----   End
--
--   Select @Sql = @Sql + " Order By a.Fecha"
--
--  
--  Exec(@Sql)
--Select @Resul = '2R=ERROR|2M=' + @Valor1 + ' , ' + @Valor2 + '|'
--       Return
--Select @Valor1 = Convert(VarChar, DateAdd(d,0,IsNull(@Valor1,'')), 103)
--Select @Valor2 = Convert(VarChar, DateAdd(d,0,IsNull(@Valor2,'')), 103)
--
--Select @Resul = '2R=ERROR|2M=' + @Valor1 + ' , ' + @Valor2 + '|'
--       Return

Select C0 = LTrim(RTrim(IsNull(a.NoFactura,''))),    --Select * From PVF..Facturas
                       C1 = LTrim(RTrim(IsNull(c.NombreFiscal,''))), 
                       C2 = LTrim(RTrim(IsNull(d.Descripcion,''))),
                       C3 = Convert(Decimal(18,2),LTrim(RTrim(IsNull(b.Cantidad,0)))) * Convert(Decimal(18,2),LTrim(RTrim(IsNull(CostoUni,0)))),
                       C4 = IsNull(Convert(Varchar,a.Fecha,103),'')
                From PVF..Facturas a (NoLock) 
                Left Join PVF..Factura_Detalles b (NoLock) On b.IdFactura = a.IdFactura
                Left Join PVF..Cat_Clientes c (NoLock) On c.IdCliente = a.IdCliente
                Left Join PVF..Cat_TipoCambio d (NoLock) On d.IdTipoCambio = a.IdTipoCambio
                Where a.Fecha Between @Valor1 And @Valor2
				Order by a.Fecha
	 Select @Registro = @@RowCount
  End

	-- Enviar Resultado
  If @Registro = 0
   Begin
      If @Validar = 0
         Select @Resul = '2R=ERROR|2M=No hay datos en el reporte|'
      If @Validar = 1
         Select @Resul = '2R=ERROR|2M=No hay datos en el reporte|'
   End
  Else
    Begin
	  If @Validar = 0
	     Select @Resul='2R=OK|'
	 If @Validar = 1 
		Select @Resul='2R=OK|'
    End

  Set NoCount OFF
END



